package roles;

import graficos.RepresentacionGrafica;


import inteligencia_mapa.HiloParaMalo;
import inteligencia_personaje.MovimientosPersonaje;

import javax.swing.ImageIcon;

import main.Programa;
import recursos.Coordenada;

public abstract class Malo extends Personaje {
	
	protected Programa elPrograma;
	protected boolean estoyMuerto;
	protected HiloParaMalo miHilo;
	protected boolean vaderecha;
	
	protected Malo(Programa MP,Coordenada C,RepresentacionGrafica r){
		super(C,MP,r);
		miHilo = new HiloParaMalo(MP, this);
		estoyMuerto = false;
		elPrograma = MP;
		vaderecha = true;
	}
		
	public abstract void irDerecha(int vel);
	
	public abstract void irIzqierda(int vel);
	
	public abstract void cambiarImagen(int opcion);
	
	public void morirse(){
		miHilo.stop();
	}
	
	public void activar(){
		if(!estoyMuerto)
			miHilo.start();
	}
	
	public HiloParaMalo obtenerHilo(){
		return miHilo;
	}
	public abstract void matarMario();
	public abstract boolean matar();
}
